Micron Document
<!DOCTYPE html>
<html class="client-nojs vector-feature-language-in-header-enabled vector-feature-language-in-main-page-header-disabled vector-feature-page-tools-pinned-disabled vector-feature-toc-pinned-clientpref-0 vector-toc-not-available vector-feature-main-menu-pinned-disabled vector-feature-limited-width-clientpref-1 vector-feature-limited-width-content-enabled vector-feature-custom-font-size-clientpref-1 vector-feature-appearance-pinned-clientpref-0 skin-theme-clientpref-day vector-sticky-header-enabled" lang="de" dir="ltr"><head>
<meta charset="UTF-8">
<title>STOS BASIC</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="icon" type="image/png" href="./_res_/favicon.png">
<link rel="canonical" href="https://de.wikipedia.org/wiki/STOS_BASIC"> <link href="./_mw_/ext.wikimediamessages.styles.css" rel="stylesheet" type="text/css">
<link href="./_mw_/skins.vector.icons.css" rel="stylesheet" type="text/css">
<link href="./_mw_/skins.vector.search.codex.styles.css" rel="stylesheet" type="text/css">
<link href="./_mw_/skins.vector.styles.css" rel="stylesheet" type="text/css">
<meta name="ResourceLoaderDynamicStyles" content="">
<link href="./_mw_/ext.gadget.citeRef.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.gadget.defaultPlainlinks.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.gadget.dewikiCommonHide.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.gadget.dewikiCommonLayout.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.gadget.dewikiCommonStyle.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.gadget.dewikiDarkmode.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.gadget.dewikiResponsive.css" rel="stylesheet" type="text/css">
<link href="./_mw_/ext.gadget.specialSearch.css" rel="stylesheet" type="text/css">
<link rel="stylesheet" type="text/css" href="./_mw_/site.styles.css">
<link rel="stylesheet" type="text/css" href="./_mw_/noscript.css">
<link rel="stylesheet" type="text/css" href="./_res_/footer.css">
<link rel="stylesheet" type="text/css" href="./_res_/vector-2022.css">
</head>
<body class="skin--responsive skin-vector skin-vector-search-vue mediawiki ltr sitedir-ltr mw-hide-empty-elt ns-0 ns-subject page-STOS_BASIC rootpage-STOS_BASIC skin-vector-2022 action-view">
<div class="mw-page-container">
<div class="mw-page-container-inner">
<div class="mw-content-container">
<main id="content" class="mw-body">
<header class="mw-body-header vector-page-titlebar">
<h1 id="firstHeading" class="firstHeading mw-first-heading"><span class="mw-page-title-main">STOS BASIC</span></h1>
</header>
<a id="top"></a>
<div id="bodyContent" class="vector-body ve-init-mw-desktopArticleTarget-targetContainer" aria-labelledby="firstHeading" data-mw-ve-target-container="">
<div id="contentSub">
<div id="mw-content-subtitle"></div>
</div>
<div id="mw-content-text" class="mw-body-content mw-content-ltr" lang="de" dir="ltr"><div class="mw-content-ltr mw-parser-output" lang="de" dir="ltr">
<p><b>STOS BASIC</b> ist eine <a href="Skriptsprache" title="Skriptsprache">Skriptsprache</a> für den <a href="Atari_ST" title="Atari ST">Atari ST</a>. Erstmals herausgegeben wurde es im Oktober <a href="1989" title="1989">1989</a> von <a href="Ariolasoft" title="Ariolasoft">Ariolasoft</a>. Produziert wurde STOS-Basic von Francois Lionet, Constantin Sotiropolus und Frédéric Pinlet unter der Leitung von Jacues Fleurance bei der Firma Mandarin Software. STOS Basic läuft nicht unter <a href="Graphical_Environment_Manager" class="mw-redirect" title="Graphical Environment Manager">GEM</a> und beinhaltet 340 Befehle.
</p><p>Die <a href="Programmiersprache" title="Programmiersprache">Programmiersprache</a>, ein <a href="BASIC" title="BASIC">BASIC</a>-Dialekt, ist auf die Spiele-Entwicklung spezialisiert und stellt Befehle für die Verwendung von <a href="Grafische_Benutzeroberfl%C3%A4che" title="Grafische Benutzeroberfläche">Grafischen Benutzeroberflächen</a>, Grafiken, Musik, und <a href="Sprite_(Computergrafik)" title="Sprite (Computergrafik)">Sprites</a> zur Verfügung. Animationen und Musik können dabei unabhängig vom Hauptprogramm ablaufen. Teile des Arbeitsspeichers werden als sogenannte Speicherbänke verwaltet, die es erlauben, mit einem Befehl den Bildschirminhalt oder Teile davon zu sichern und später wiederherzustellen. Einzelne Bänke sind reserviert für Daten wie Sprites, Icons, Musik oder Zeichensätze.
</p>

<div class="mw-heading mw-heading2"><h2 id="Programmierbeispiel_Screen">Programmierbeispiel Screen</h2></div>
<p>Dieses Beispiel kopiert den Bildschirminhalt sowie einen Ausschnitt in die Speicherbank und wieder zurück.
</p>
<pre>10 reserve as datascreen 10
20 screen copy logic to 10 (Speichert den Bildschirminhalt in Bank 10)
30 screen copy 10 to logic (Holt den Inhalt aus Bank 10 und zeigt ihn auf dem Monitor an)
</pre>
<pre>40 screen copy logic,0,0,100,100 to 10,0,0 (Speichert einen Bildschirm-Ausschnitt)
</pre>
<div class="mw-heading mw-heading2"><h2 id="Programmierbeispiel_Sprites">Programmierbeispiel Sprites</h2></div>
<p>Dieses Beispiel stellt ein Sprite dar, animiert und bewegt es auf dem Bildschirm.
</p>
<pre>10 load "sprites.mbk" (Lädt eine ganze Gruppe Sprites in den Speicher)
20 sprite 1,100,100,6 (Zeigt Bild 6 als Sprite Nr.1 an)
30 anim 1,"(6,10)(7,10)(8,10)L" (Legt die Animationssequenz fest)
40 move x 1,"(1,3,50)(1,-3,50)" (Legt die Bewegungssequenz fest)
50 anim on
60 move on
</pre>
<div class="mw-heading mw-heading2"><h2 id="Programmierbeispiel_Sound">Programmierbeispiel Sound</h2></div>
<pre>10 load "sound.mbk" (Lädt eine Datei mit Tondaten in den Speicher)
20 music 2 (Lässt die Melodie 2 abspielen)
30 tempo 10 (Reduziert die Abspielgeschwindigkeit)
40 transpose 30 (Erhöht die Tonhöhe)
</pre>
<div class="mw-heading mw-heading2"><h2 id="Grafikbefehle">Grafikbefehle</h2></div>
<p>STOS BASIC stellt 32 Befehle für die Erstellung von Grafiken zur Verfügung, darunter:
</p>
<ul><li>ARC (Kreisbogen)</li>
<li>EARC (Ellipsenbogen)</li>
<li>BOX (leeres Rechteck)</li>
<li>RBOX (leeres Rechteck mit runden Ecken)</li>
<li>PIE (Kreisausschnitt)</li>
<li>BAR (Balken)</li>
<li>SET LINE (Linienform festlegen)</li></ul>
<div class="mw-heading mw-heading2"><h2 id="Programmierbeispiel_Fenster">Programmierbeispiel Fenster</h2></div>
<pre>10 windopen 1,0,0,9,4,4,3 (Öffnet ein Fenster)
20 title "Window Nr.1" (Setzt den Titel für das Fenster)
40 window 1 (Aktiviert Fenster 1)
50 windmove 20,20 (Verschiebt das Fenster)
</pre>
<div class="mw-heading mw-heading2"><h2 id="Programmierbeispiel_Menü"><span id="Programmierbeispiel_Men.C3.BC"></span>Programmierbeispiel Menü</h2></div>
<pre>10 menue$ (1)="Action"
20 menue$ (2)="Mouse"
30 menue$ (2,1)="Arrow"
40 menue$ (2,2)="Hand"
50 onmenue goto 10
</pre>
<div class="mw-heading mw-heading2"><h2 id="Programmablauf-Befehle">Programmablauf-Befehle</h2></div>
<ul><li>GOTO</li>
<li>GOSUB</li>
<li>FOR/NEXT</li>
<li>WHILE/WEND</li>
<li>REPEAT/UNTIL</li>
<li>IF/THEN/ELSE</li>
<li>ON var GOTO/GOSUB (Sprung abhängig vom Wert der Variablen)</li>
<li>ON ERROR GOTO (für die Fehlerbehandlung)</li>
<li>INKEY$ (Tastaturabfrage)</li>
<li>INPUT</li></ul>
<div class="mw-heading mw-heading2"><h2 id="Trigonometrische_und_Mathematische_Funktionen">Trigonometrische und Mathematische Funktionen</h2></div>
<p><a href="Gleitkommazahl" title="Gleitkommazahl">Gleitkommazahlen</a> werden bei STOS-Basic auf 16 Nachkommastellen genau berechnet. Um die Geschwindigkeit der Programme zu erhöhen, kann man die Genauigkeit auf 7 Nachkommastellen reduzieren.
</p>
<ul><li>DEG</li>
<li>RAD</li>
<li>SIN/ASIN/HSIN</li>
<li>COS/ACOS/HCOS</li>
<li>TAN/ATAN/HTAN</li>
<li>PI</li>
<li>LOG</li>
<li>EXP</li>
<li>SQR</li>
<li>ABS</li>
<li>INT</li>
<li>MAX/MIN</li>
<li>RND</li></ul>
<p>Zusätzlich kann man bei STOS-Basic auch direkte Maschinenbefehle verwenden oder die STOS-Funktionen über Maschinensprache-Befehle direkt aufrufen. Somit kann man den Prozessor auch bitweise beeinflussen. Möglich ist es auch, komplexere Maschinenprogramme in den Speicher zu laden und aus dem BASIC-Programm heraus aufzurufen.
</p><p>Zum STOS-Basic gibt es auch einen <a href="Compiler" title="Compiler">Compiler</a>, der in BASIC geschriebene Programme in lauffähige Maschinencode-Programme umwandelt.
</p>
<div class="mw-heading mw-heading2"><h2 id="Weblinks">Weblinks</h2></div>
<ul><li><a rel="nofollow" class="external text" href="https://www.stcarchiv.de/hc1989/01/stos-basic">STOS: Mit Joystick und 16 Farben</a>, Happy Computer 01/1989</li>
<li><a rel="nofollow" class="external text" href="https://www.stcarchiv.de/stc1989/09/stos-the-game-creator">STOS - The Game Creator</a>, ST-Computer 09/1989</li></ul>
<div class="mw-heading mw-heading2"><h2 id="Siehe_auch">Siehe auch</h2></div>
<ul><li><a href="AMOS_BASIC" title="AMOS BASIC">AMOS BASIC</a></li></ul></div><!--htdig_noindex--><div><div class="zim-footer">
Dieser Artikel wurde von <a class="external text" title="Zuletzt bearbeitet am 2025-03-10" href="https://de.wikipedia.org/wiki/?title=STOS_BASIC&amp;oldid=254081395">Wikipedia</a> herausgegeben. Der Text ist unter <a class="external text" href="https://creativecommons.org/licenses/by-sa/4.0/deed.de">Creative Commons Attribution-Share Alike 4.0</a> verfügbar, sofern nicht anders angegeben. Für die Mediendateien können zusätzliche Bedingungen gelten.
</div>
</div><!--/htdig_noindex--></div>
</div>
</main>
</div>
</div>
</div>
<script src="./_webp_/webpHandler.js"></script>

</body></html>